package com.hydl.power.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class PowerDeviceExample {
    /**
     */
    protected String orderByClause;

    /**
     */
    protected boolean distinct;

    /**
     */
    protected List<Criteria> oredCriteria;

    public PowerDeviceExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andDeviceIdIsNull() {
            addCriterion("device_id is null");
            return (Criteria) this;
        }

        public Criteria andDeviceIdIsNotNull() {
            addCriterion("device_id is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceIdEqualTo(String value) {
            addCriterion("device_id =", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdNotEqualTo(String value) {
            addCriterion("device_id <>", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdGreaterThan(String value) {
            addCriterion("device_id >", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdGreaterThanOrEqualTo(String value) {
            addCriterion("device_id >=", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdLessThan(String value) {
            addCriterion("device_id <", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdLessThanOrEqualTo(String value) {
            addCriterion("device_id <=", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdLike(String value) {
            addCriterion("device_id like", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdNotLike(String value) {
            addCriterion("device_id not like", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdIn(List<String> values) {
            addCriterion("device_id in", values, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdNotIn(List<String> values) {
            addCriterion("device_id not in", values, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdBetween(String value1, String value2) {
            addCriterion("device_id between", value1, value2, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdNotBetween(String value1, String value2) {
            addCriterion("device_id not between", value1, value2, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceNameIsNull() {
            addCriterion("device_name is null");
            return (Criteria) this;
        }

        public Criteria andDeviceNameIsNotNull() {
            addCriterion("device_name is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceNameEqualTo(String value) {
            addCriterion("device_name =", value, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameNotEqualTo(String value) {
            addCriterion("device_name <>", value, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameGreaterThan(String value) {
            addCriterion("device_name >", value, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameGreaterThanOrEqualTo(String value) {
            addCriterion("device_name >=", value, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameLessThan(String value) {
            addCriterion("device_name <", value, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameLessThanOrEqualTo(String value) {
            addCriterion("device_name <=", value, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameLike(String value) {
            addCriterion("device_name like", value, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameNotLike(String value) {
            addCriterion("device_name not like", value, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameIn(List<String> values) {
            addCriterion("device_name in", values, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameNotIn(List<String> values) {
            addCriterion("device_name not in", values, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameBetween(String value1, String value2) {
            addCriterion("device_name between", value1, value2, "deviceName");
            return (Criteria) this;
        }

        public Criteria andDeviceNameNotBetween(String value1, String value2) {
            addCriterion("device_name not between", value1, value2, "deviceName");
            return (Criteria) this;
        }

        public Criteria andAreaIdIsNull() {
            addCriterion("area_id is null");
            return (Criteria) this;
        }

        public Criteria andAreaIdIsNotNull() {
            addCriterion("area_id is not null");
            return (Criteria) this;
        }

        public Criteria andAreaIdEqualTo(String value) {
            addCriterion("area_id =", value, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdNotEqualTo(String value) {
            addCriterion("area_id <>", value, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdGreaterThan(String value) {
            addCriterion("area_id >", value, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdGreaterThanOrEqualTo(String value) {
            addCriterion("area_id >=", value, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdLessThan(String value) {
            addCriterion("area_id <", value, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdLessThanOrEqualTo(String value) {
            addCriterion("area_id <=", value, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdLike(String value) {
            addCriterion("area_id like", value, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdNotLike(String value) {
            addCriterion("area_id not like", value, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdIn(List<String> values) {
            addCriterion("area_id in", values, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdNotIn(List<String> values) {
            addCriterion("area_id not in", values, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdBetween(String value1, String value2) {
            addCriterion("area_id between", value1, value2, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaIdNotBetween(String value1, String value2) {
            addCriterion("area_id not between", value1, value2, "areaId");
            return (Criteria) this;
        }

        public Criteria andAreaNameIsNull() {
            addCriterion("area_name is null");
            return (Criteria) this;
        }

        public Criteria andAreaNameIsNotNull() {
            addCriterion("area_name is not null");
            return (Criteria) this;
        }

        public Criteria andAreaNameEqualTo(String value) {
            addCriterion("area_name =", value, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameNotEqualTo(String value) {
            addCriterion("area_name <>", value, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameGreaterThan(String value) {
            addCriterion("area_name >", value, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameGreaterThanOrEqualTo(String value) {
            addCriterion("area_name >=", value, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameLessThan(String value) {
            addCriterion("area_name <", value, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameLessThanOrEqualTo(String value) {
            addCriterion("area_name <=", value, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameLike(String value) {
            addCriterion("area_name like", value, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameNotLike(String value) {
            addCriterion("area_name not like", value, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameIn(List<String> values) {
            addCriterion("area_name in", values, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameNotIn(List<String> values) {
            addCriterion("area_name not in", values, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameBetween(String value1, String value2) {
            addCriterion("area_name between", value1, value2, "areaName");
            return (Criteria) this;
        }

        public Criteria andAreaNameNotBetween(String value1, String value2) {
            addCriterion("area_name not between", value1, value2, "areaName");
            return (Criteria) this;
        }

        public Criteria andProjectIdIsNull() {
            addCriterion("project_id is null");
            return (Criteria) this;
        }

        public Criteria andProjectIdIsNotNull() {
            addCriterion("project_id is not null");
            return (Criteria) this;
        }

        public Criteria andProjectIdEqualTo(String value) {
            addCriterion("project_id =", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdNotEqualTo(String value) {
            addCriterion("project_id <>", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdGreaterThan(String value) {
            addCriterion("project_id >", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdGreaterThanOrEqualTo(String value) {
            addCriterion("project_id >=", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdLessThan(String value) {
            addCriterion("project_id <", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdLessThanOrEqualTo(String value) {
            addCriterion("project_id <=", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdLike(String value) {
            addCriterion("project_id like", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdNotLike(String value) {
            addCriterion("project_id not like", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdIn(List<String> values) {
            addCriterion("project_id in", values, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdNotIn(List<String> values) {
            addCriterion("project_id not in", values, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdBetween(String value1, String value2) {
            addCriterion("project_id between", value1, value2, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdNotBetween(String value1, String value2) {
            addCriterion("project_id not between", value1, value2, "projectId");
            return (Criteria) this;
        }

        public Criteria andNavIdIsNull() {
            addCriterion("nav_id is null");
            return (Criteria) this;
        }

        public Criteria andNavIdIsNotNull() {
            addCriterion("nav_id is not null");
            return (Criteria) this;
        }

        public Criteria andNavIdEqualTo(String value) {
            addCriterion("nav_id =", value, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdNotEqualTo(String value) {
            addCriterion("nav_id <>", value, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdGreaterThan(String value) {
            addCriterion("nav_id >", value, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdGreaterThanOrEqualTo(String value) {
            addCriterion("nav_id >=", value, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdLessThan(String value) {
            addCriterion("nav_id <", value, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdLessThanOrEqualTo(String value) {
            addCriterion("nav_id <=", value, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdLike(String value) {
            addCriterion("nav_id like", value, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdNotLike(String value) {
            addCriterion("nav_id not like", value, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdIn(List<String> values) {
            addCriterion("nav_id in", values, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdNotIn(List<String> values) {
            addCriterion("nav_id not in", values, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdBetween(String value1, String value2) {
            addCriterion("nav_id between", value1, value2, "navId");
            return (Criteria) this;
        }

        public Criteria andNavIdNotBetween(String value1, String value2) {
            addCriterion("nav_id not between", value1, value2, "navId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdIsNull() {
            addCriterion("power_room_id is null");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdIsNotNull() {
            addCriterion("power_room_id is not null");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdEqualTo(String value) {
            addCriterion("power_room_id =", value, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdNotEqualTo(String value) {
            addCriterion("power_room_id <>", value, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdGreaterThan(String value) {
            addCriterion("power_room_id >", value, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdGreaterThanOrEqualTo(String value) {
            addCriterion("power_room_id >=", value, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdLessThan(String value) {
            addCriterion("power_room_id <", value, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdLessThanOrEqualTo(String value) {
            addCriterion("power_room_id <=", value, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdLike(String value) {
            addCriterion("power_room_id like", value, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdNotLike(String value) {
            addCriterion("power_room_id not like", value, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdIn(List<String> values) {
            addCriterion("power_room_id in", values, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdNotIn(List<String> values) {
            addCriterion("power_room_id not in", values, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdBetween(String value1, String value2) {
            addCriterion("power_room_id between", value1, value2, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomIdNotBetween(String value1, String value2) {
            addCriterion("power_room_id not between", value1, value2, "powerRoomId");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameIsNull() {
            addCriterion("power_room_name is null");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameIsNotNull() {
            addCriterion("power_room_name is not null");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameEqualTo(String value) {
            addCriterion("power_room_name =", value, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameNotEqualTo(String value) {
            addCriterion("power_room_name <>", value, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameGreaterThan(String value) {
            addCriterion("power_room_name >", value, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameGreaterThanOrEqualTo(String value) {
            addCriterion("power_room_name >=", value, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameLessThan(String value) {
            addCriterion("power_room_name <", value, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameLessThanOrEqualTo(String value) {
            addCriterion("power_room_name <=", value, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameLike(String value) {
            addCriterion("power_room_name like", value, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameNotLike(String value) {
            addCriterion("power_room_name not like", value, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameIn(List<String> values) {
            addCriterion("power_room_name in", values, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameNotIn(List<String> values) {
            addCriterion("power_room_name not in", values, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameBetween(String value1, String value2) {
            addCriterion("power_room_name between", value1, value2, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andPowerRoomNameNotBetween(String value1, String value2) {
            addCriterion("power_room_name not between", value1, value2, "powerRoomName");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressIsNull() {
            addCriterion("device_address is null");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressIsNotNull() {
            addCriterion("device_address is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressEqualTo(String value) {
            addCriterion("device_address =", value, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressNotEqualTo(String value) {
            addCriterion("device_address <>", value, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressGreaterThan(String value) {
            addCriterion("device_address >", value, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressGreaterThanOrEqualTo(String value) {
            addCriterion("device_address >=", value, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressLessThan(String value) {
            addCriterion("device_address <", value, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressLessThanOrEqualTo(String value) {
            addCriterion("device_address <=", value, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressLike(String value) {
            addCriterion("device_address like", value, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressNotLike(String value) {
            addCriterion("device_address not like", value, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressIn(List<String> values) {
            addCriterion("device_address in", values, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressNotIn(List<String> values) {
            addCriterion("device_address not in", values, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressBetween(String value1, String value2) {
            addCriterion("device_address between", value1, value2, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceAddressNotBetween(String value1, String value2) {
            addCriterion("device_address not between", value1, value2, "deviceAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeIsNull() {
            addCriterion("device_type is null");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeIsNotNull() {
            addCriterion("device_type is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeEqualTo(Integer value) {
            addCriterion("device_type =", value, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeNotEqualTo(Integer value) {
            addCriterion("device_type <>", value, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeGreaterThan(Integer value) {
            addCriterion("device_type >", value, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("device_type >=", value, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeLessThan(Integer value) {
            addCriterion("device_type <", value, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeLessThanOrEqualTo(Integer value) {
            addCriterion("device_type <=", value, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeIn(List<Integer> values) {
            addCriterion("device_type in", values, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeNotIn(List<Integer> values) {
            addCriterion("device_type not in", values, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeBetween(Integer value1, Integer value2) {
            addCriterion("device_type between", value1, value2, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDeviceTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("device_type not between", value1, value2, "deviceType");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyIsNull() {
            addCriterion("device_property is null");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyIsNotNull() {
            addCriterion("device_property is not null");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyEqualTo(String value) {
            addCriterion("device_property =", value, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyNotEqualTo(String value) {
            addCriterion("device_property <>", value, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyGreaterThan(String value) {
            addCriterion("device_property >", value, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyGreaterThanOrEqualTo(String value) {
            addCriterion("device_property >=", value, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyLessThan(String value) {
            addCriterion("device_property <", value, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyLessThanOrEqualTo(String value) {
            addCriterion("device_property <=", value, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyLike(String value) {
            addCriterion("device_property like", value, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyNotLike(String value) {
            addCriterion("device_property not like", value, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyIn(List<String> values) {
            addCriterion("device_property in", values, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyNotIn(List<String> values) {
            addCriterion("device_property not in", values, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyBetween(String value1, String value2) {
            addCriterion("device_property between", value1, value2, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andDevicePropertyNotBetween(String value1, String value2) {
            addCriterion("device_property not between", value1, value2, "deviceProperty");
            return (Criteria) this;
        }

        public Criteria andIemiIsNull() {
            addCriterion("iemi is null");
            return (Criteria) this;
        }

        public Criteria andIemiIsNotNull() {
            addCriterion("iemi is not null");
            return (Criteria) this;
        }

        public Criteria andIemiEqualTo(String value) {
            addCriterion("iemi =", value, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiNotEqualTo(String value) {
            addCriterion("iemi <>", value, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiGreaterThan(String value) {
            addCriterion("iemi >", value, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiGreaterThanOrEqualTo(String value) {
            addCriterion("iemi >=", value, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiLessThan(String value) {
            addCriterion("iemi <", value, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiLessThanOrEqualTo(String value) {
            addCriterion("iemi <=", value, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiLike(String value) {
            addCriterion("iemi like", value, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiNotLike(String value) {
            addCriterion("iemi not like", value, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiIn(List<String> values) {
            addCriterion("iemi in", values, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiNotIn(List<String> values) {
            addCriterion("iemi not in", values, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiBetween(String value1, String value2) {
            addCriterion("iemi between", value1, value2, "iemi");
            return (Criteria) this;
        }

        public Criteria andIemiNotBetween(String value1, String value2) {
            addCriterion("iemi not between", value1, value2, "iemi");
            return (Criteria) this;
        }

        public Criteria andEspIpIsNull() {
            addCriterion("esp_ip is null");
            return (Criteria) this;
        }

        public Criteria andEspIpIsNotNull() {
            addCriterion("esp_ip is not null");
            return (Criteria) this;
        }

        public Criteria andEspIpEqualTo(String value) {
            addCriterion("esp_ip =", value, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpNotEqualTo(String value) {
            addCriterion("esp_ip <>", value, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpGreaterThan(String value) {
            addCriterion("esp_ip >", value, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpGreaterThanOrEqualTo(String value) {
            addCriterion("esp_ip >=", value, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpLessThan(String value) {
            addCriterion("esp_ip <", value, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpLessThanOrEqualTo(String value) {
            addCriterion("esp_ip <=", value, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpLike(String value) {
            addCriterion("esp_ip like", value, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpNotLike(String value) {
            addCriterion("esp_ip not like", value, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpIn(List<String> values) {
            addCriterion("esp_ip in", values, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpNotIn(List<String> values) {
            addCriterion("esp_ip not in", values, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpBetween(String value1, String value2) {
            addCriterion("esp_ip between", value1, value2, "espIp");
            return (Criteria) this;
        }

        public Criteria andEspIpNotBetween(String value1, String value2) {
            addCriterion("esp_ip not between", value1, value2, "espIp");
            return (Criteria) this;
        }

        public Criteria andFlagIsNull() {
            addCriterion("flag is null");
            return (Criteria) this;
        }

        public Criteria andFlagIsNotNull() {
            addCriterion("flag is not null");
            return (Criteria) this;
        }

        public Criteria andFlagEqualTo(Integer value) {
            addCriterion("flag =", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagNotEqualTo(Integer value) {
            addCriterion("flag <>", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagGreaterThan(Integer value) {
            addCriterion("flag >", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagGreaterThanOrEqualTo(Integer value) {
            addCriterion("flag >=", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagLessThan(Integer value) {
            addCriterion("flag <", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagLessThanOrEqualTo(Integer value) {
            addCriterion("flag <=", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagIn(List<Integer> values) {
            addCriterion("flag in", values, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagNotIn(List<Integer> values) {
            addCriterion("flag not in", values, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagBetween(Integer value1, Integer value2) {
            addCriterion("flag between", value1, value2, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagNotBetween(Integer value1, Integer value2) {
            addCriterion("flag not between", value1, value2, "flag");
            return (Criteria) this;
        }

        public Criteria andSerialNumberIsNull() {
            addCriterion("serial_number is null");
            return (Criteria) this;
        }

        public Criteria andSerialNumberIsNotNull() {
            addCriterion("serial_number is not null");
            return (Criteria) this;
        }

        public Criteria andSerialNumberEqualTo(String value) {
            addCriterion("serial_number =", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberNotEqualTo(String value) {
            addCriterion("serial_number <>", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberGreaterThan(String value) {
            addCriterion("serial_number >", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberGreaterThanOrEqualTo(String value) {
            addCriterion("serial_number >=", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberLessThan(String value) {
            addCriterion("serial_number <", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberLessThanOrEqualTo(String value) {
            addCriterion("serial_number <=", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberLike(String value) {
            addCriterion("serial_number like", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberNotLike(String value) {
            addCriterion("serial_number not like", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberIn(List<String> values) {
            addCriterion("serial_number in", values, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberNotIn(List<String> values) {
            addCriterion("serial_number not in", values, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberBetween(String value1, String value2) {
            addCriterion("serial_number between", value1, value2, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberNotBetween(String value1, String value2) {
            addCriterion("serial_number not between", value1, value2, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeIsNull() {
            addCriterion("device_time is null");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeIsNotNull() {
            addCriterion("device_time is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeEqualTo(Date value) {
            addCriterion("device_time =", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeNotEqualTo(Date value) {
            addCriterion("device_time <>", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeGreaterThan(Date value) {
            addCriterion("device_time >", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("device_time >=", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeLessThan(Date value) {
            addCriterion("device_time <", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeLessThanOrEqualTo(Date value) {
            addCriterion("device_time <=", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeIn(List<Date> values) {
            addCriterion("device_time in", values, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeNotIn(List<Date> values) {
            addCriterion("device_time not in", values, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeBetween(Date value1, Date value2) {
            addCriterion("device_time between", value1, value2, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeNotBetween(Date value1, Date value2) {
            addCriterion("device_time not between", value1, value2, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andGatewaySnIsNull() {
            addCriterion("gateway_sn is null");
            return (Criteria) this;
        }

        public Criteria andGatewaySnIsNotNull() {
            addCriterion("gateway_sn is not null");
            return (Criteria) this;
        }

        public Criteria andGatewaySnEqualTo(String value) {
            addCriterion("gateway_sn =", value, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnNotEqualTo(String value) {
            addCriterion("gateway_sn <>", value, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnGreaterThan(String value) {
            addCriterion("gateway_sn >", value, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnGreaterThanOrEqualTo(String value) {
            addCriterion("gateway_sn >=", value, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnLessThan(String value) {
            addCriterion("gateway_sn <", value, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnLessThanOrEqualTo(String value) {
            addCriterion("gateway_sn <=", value, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnLike(String value) {
            addCriterion("gateway_sn like", value, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnNotLike(String value) {
            addCriterion("gateway_sn not like", value, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnIn(List<String> values) {
            addCriterion("gateway_sn in", values, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnNotIn(List<String> values) {
            addCriterion("gateway_sn not in", values, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnBetween(String value1, String value2) {
            addCriterion("gateway_sn between", value1, value2, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andGatewaySnNotBetween(String value1, String value2) {
            addCriterion("gateway_sn not between", value1, value2, "gatewaySn");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressIsNull() {
            addCriterion("device_message_address is null");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressIsNotNull() {
            addCriterion("device_message_address is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressEqualTo(String value) {
            addCriterion("device_message_address =", value, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressNotEqualTo(String value) {
            addCriterion("device_message_address <>", value, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressGreaterThan(String value) {
            addCriterion("device_message_address >", value, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressGreaterThanOrEqualTo(String value) {
            addCriterion("device_message_address >=", value, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressLessThan(String value) {
            addCriterion("device_message_address <", value, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressLessThanOrEqualTo(String value) {
            addCriterion("device_message_address <=", value, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressLike(String value) {
            addCriterion("device_message_address like", value, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressNotLike(String value) {
            addCriterion("device_message_address not like", value, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressIn(List<String> values) {
            addCriterion("device_message_address in", values, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressNotIn(List<String> values) {
            addCriterion("device_message_address not in", values, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressBetween(String value1, String value2) {
            addCriterion("device_message_address between", value1, value2, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andDeviceMessageAddressNotBetween(String value1, String value2) {
            addCriterion("device_message_address not between", value1, value2, "deviceMessageAddress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressIsNull() {
            addCriterion("commonality_ddress is null");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressIsNotNull() {
            addCriterion("commonality_ddress is not null");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressEqualTo(String value) {
            addCriterion("commonality_ddress =", value, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressNotEqualTo(String value) {
            addCriterion("commonality_ddress <>", value, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressGreaterThan(String value) {
            addCriterion("commonality_ddress >", value, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressGreaterThanOrEqualTo(String value) {
            addCriterion("commonality_ddress >=", value, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressLessThan(String value) {
            addCriterion("commonality_ddress <", value, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressLessThanOrEqualTo(String value) {
            addCriterion("commonality_ddress <=", value, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressLike(String value) {
            addCriterion("commonality_ddress like", value, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressNotLike(String value) {
            addCriterion("commonality_ddress not like", value, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressIn(List<String> values) {
            addCriterion("commonality_ddress in", values, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressNotIn(List<String> values) {
            addCriterion("commonality_ddress not in", values, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressBetween(String value1, String value2) {
            addCriterion("commonality_ddress between", value1, value2, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andCommonalityDdressNotBetween(String value1, String value2) {
            addCriterion("commonality_ddress not between", value1, value2, "commonalityDdress");
            return (Criteria) this;
        }

        public Criteria andAisleIsNull() {
            addCriterion("aisle is null");
            return (Criteria) this;
        }

        public Criteria andAisleIsNotNull() {
            addCriterion("aisle is not null");
            return (Criteria) this;
        }

        public Criteria andAisleEqualTo(String value) {
            addCriterion("aisle =", value, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleNotEqualTo(String value) {
            addCriterion("aisle <>", value, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleGreaterThan(String value) {
            addCriterion("aisle >", value, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleGreaterThanOrEqualTo(String value) {
            addCriterion("aisle >=", value, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleLessThan(String value) {
            addCriterion("aisle <", value, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleLessThanOrEqualTo(String value) {
            addCriterion("aisle <=", value, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleLike(String value) {
            addCriterion("aisle like", value, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleNotLike(String value) {
            addCriterion("aisle not like", value, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleIn(List<String> values) {
            addCriterion("aisle in", values, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleNotIn(List<String> values) {
            addCriterion("aisle not in", values, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleBetween(String value1, String value2) {
            addCriterion("aisle between", value1, value2, "aisle");
            return (Criteria) this;
        }

        public Criteria andAisleNotBetween(String value1, String value2) {
            addCriterion("aisle not between", value1, value2, "aisle");
            return (Criteria) this;
        }

        public Criteria andTableNameIsNull() {
            addCriterion("table_name is null");
            return (Criteria) this;
        }

        public Criteria andTableNameIsNotNull() {
            addCriterion("table_name is not null");
            return (Criteria) this;
        }

        public Criteria andTableNameEqualTo(String value) {
            addCriterion("table_name =", value, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameNotEqualTo(String value) {
            addCriterion("table_name <>", value, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameGreaterThan(String value) {
            addCriterion("table_name >", value, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameGreaterThanOrEqualTo(String value) {
            addCriterion("table_name >=", value, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameLessThan(String value) {
            addCriterion("table_name <", value, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameLessThanOrEqualTo(String value) {
            addCriterion("table_name <=", value, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameLike(String value) {
            addCriterion("table_name like", value, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameNotLike(String value) {
            addCriterion("table_name not like", value, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameIn(List<String> values) {
            addCriterion("table_name in", values, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameNotIn(List<String> values) {
            addCriterion("table_name not in", values, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameBetween(String value1, String value2) {
            addCriterion("table_name between", value1, value2, "tableName");
            return (Criteria) this;
        }

        public Criteria andTableNameNotBetween(String value1, String value2) {
            addCriterion("table_name not between", value1, value2, "tableName");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusIsNull() {
            addCriterion("alarm_status is null");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusIsNotNull() {
            addCriterion("alarm_status is not null");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusEqualTo(Integer value) {
            addCriterion("alarm_status =", value, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusNotEqualTo(Integer value) {
            addCriterion("alarm_status <>", value, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusGreaterThan(Integer value) {
            addCriterion("alarm_status >", value, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("alarm_status >=", value, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusLessThan(Integer value) {
            addCriterion("alarm_status <", value, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusLessThanOrEqualTo(Integer value) {
            addCriterion("alarm_status <=", value, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusIn(List<Integer> values) {
            addCriterion("alarm_status in", values, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusNotIn(List<Integer> values) {
            addCriterion("alarm_status not in", values, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusBetween(Integer value1, Integer value2) {
            addCriterion("alarm_status between", value1, value2, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("alarm_status not between", value1, value2, "alarmStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusIsNull() {
            addCriterion("communication_status is null");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusIsNotNull() {
            addCriterion("communication_status is not null");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusEqualTo(Integer value) {
            addCriterion("communication_status =", value, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusNotEqualTo(Integer value) {
            addCriterion("communication_status <>", value, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusGreaterThan(Integer value) {
            addCriterion("communication_status >", value, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("communication_status >=", value, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusLessThan(Integer value) {
            addCriterion("communication_status <", value, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusLessThanOrEqualTo(Integer value) {
            addCriterion("communication_status <=", value, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusIn(List<Integer> values) {
            addCriterion("communication_status in", values, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusNotIn(List<Integer> values) {
            addCriterion("communication_status not in", values, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusBetween(Integer value1, Integer value2) {
            addCriterion("communication_status between", value1, value2, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andCommunicationStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("communication_status not between", value1, value2, "communicationStatus");
            return (Criteria) this;
        }

        public Criteria andAlarmIsNull() {
            addCriterion("alarm is null");
            return (Criteria) this;
        }

        public Criteria andAlarmIsNotNull() {
            addCriterion("alarm is not null");
            return (Criteria) this;
        }

        public Criteria andAlarmEqualTo(Integer value) {
            addCriterion("alarm =", value, "alarm");
            return (Criteria) this;
        }

        public Criteria andAlarmNotEqualTo(Integer value) {
            addCriterion("alarm <>", value, "alarm");
            return (Criteria) this;
        }

        public Criteria andAlarmGreaterThan(Integer value) {
            addCriterion("alarm >", value, "alarm");
            return (Criteria) this;
        }

        public Criteria andAlarmGreaterThanOrEqualTo(Integer value) {
            addCriterion("alarm >=", value, "alarm");
            return (Criteria) this;
        }

        public Criteria andAlarmLessThan(Integer value) {
            addCriterion("alarm <", value, "alarm");
            return (Criteria) this;
        }

        public Criteria andAlarmLessThanOrEqualTo(Integer value) {
            addCriterion("alarm <=", value, "alarm");
            return (Criteria) this;
        }

        public Criteria andAlarmIn(List<Integer> values) {
            addCriterion("alarm in", values, "alarm");
            return (Criteria) this;
        }

        public Criteria andAlarmNotIn(List<Integer> values) {
            addCriterion("alarm not in", values, "alarm");
            return (Criteria) this;
        }

        public Criteria andAlarmBetween(Integer value1, Integer value2) {
            addCriterion("alarm between", value1, value2, "alarm");
            return (Criteria) this;
        }

        public Criteria andAlarmNotBetween(Integer value1, Integer value2) {
            addCriterion("alarm not between", value1, value2, "alarm");
            return (Criteria) this;
        }

        public Criteria andIaIsNull() {
            addCriterion("Ia is null");
            return (Criteria) this;
        }

        public Criteria andIaIsNotNull() {
            addCriterion("Ia is not null");
            return (Criteria) this;
        }

        public Criteria andIaEqualTo(String value) {
            addCriterion("Ia =", value, "ia");
            return (Criteria) this;
        }

        public Criteria andIaNotEqualTo(String value) {
            addCriterion("Ia <>", value, "ia");
            return (Criteria) this;
        }

        public Criteria andIaGreaterThan(String value) {
            addCriterion("Ia >", value, "ia");
            return (Criteria) this;
        }

        public Criteria andIaGreaterThanOrEqualTo(String value) {
            addCriterion("Ia >=", value, "ia");
            return (Criteria) this;
        }

        public Criteria andIaLessThan(String value) {
            addCriterion("Ia <", value, "ia");
            return (Criteria) this;
        }

        public Criteria andIaLessThanOrEqualTo(String value) {
            addCriterion("Ia <=", value, "ia");
            return (Criteria) this;
        }

        public Criteria andIaLike(String value) {
            addCriterion("Ia like", value, "ia");
            return (Criteria) this;
        }

        public Criteria andIaNotLike(String value) {
            addCriterion("Ia not like", value, "ia");
            return (Criteria) this;
        }

        public Criteria andIaIn(List<String> values) {
            addCriterion("Ia in", values, "ia");
            return (Criteria) this;
        }

        public Criteria andIaNotIn(List<String> values) {
            addCriterion("Ia not in", values, "ia");
            return (Criteria) this;
        }

        public Criteria andIaBetween(String value1, String value2) {
            addCriterion("Ia between", value1, value2, "ia");
            return (Criteria) this;
        }

        public Criteria andIaNotBetween(String value1, String value2) {
            addCriterion("Ia not between", value1, value2, "ia");
            return (Criteria) this;
        }

        public Criteria andIbIsNull() {
            addCriterion("Ib is null");
            return (Criteria) this;
        }

        public Criteria andIbIsNotNull() {
            addCriterion("Ib is not null");
            return (Criteria) this;
        }

        public Criteria andIbEqualTo(String value) {
            addCriterion("Ib =", value, "ib");
            return (Criteria) this;
        }

        public Criteria andIbNotEqualTo(String value) {
            addCriterion("Ib <>", value, "ib");
            return (Criteria) this;
        }

        public Criteria andIbGreaterThan(String value) {
            addCriterion("Ib >", value, "ib");
            return (Criteria) this;
        }

        public Criteria andIbGreaterThanOrEqualTo(String value) {
            addCriterion("Ib >=", value, "ib");
            return (Criteria) this;
        }

        public Criteria andIbLessThan(String value) {
            addCriterion("Ib <", value, "ib");
            return (Criteria) this;
        }

        public Criteria andIbLessThanOrEqualTo(String value) {
            addCriterion("Ib <=", value, "ib");
            return (Criteria) this;
        }

        public Criteria andIbLike(String value) {
            addCriterion("Ib like", value, "ib");
            return (Criteria) this;
        }

        public Criteria andIbNotLike(String value) {
            addCriterion("Ib not like", value, "ib");
            return (Criteria) this;
        }

        public Criteria andIbIn(List<String> values) {
            addCriterion("Ib in", values, "ib");
            return (Criteria) this;
        }

        public Criteria andIbNotIn(List<String> values) {
            addCriterion("Ib not in", values, "ib");
            return (Criteria) this;
        }

        public Criteria andIbBetween(String value1, String value2) {
            addCriterion("Ib between", value1, value2, "ib");
            return (Criteria) this;
        }

        public Criteria andIbNotBetween(String value1, String value2) {
            addCriterion("Ib not between", value1, value2, "ib");
            return (Criteria) this;
        }

        public Criteria andIcIsNull() {
            addCriterion("Ic is null");
            return (Criteria) this;
        }

        public Criteria andIcIsNotNull() {
            addCriterion("Ic is not null");
            return (Criteria) this;
        }

        public Criteria andIcEqualTo(String value) {
            addCriterion("Ic =", value, "ic");
            return (Criteria) this;
        }

        public Criteria andIcNotEqualTo(String value) {
            addCriterion("Ic <>", value, "ic");
            return (Criteria) this;
        }

        public Criteria andIcGreaterThan(String value) {
            addCriterion("Ic >", value, "ic");
            return (Criteria) this;
        }

        public Criteria andIcGreaterThanOrEqualTo(String value) {
            addCriterion("Ic >=", value, "ic");
            return (Criteria) this;
        }

        public Criteria andIcLessThan(String value) {
            addCriterion("Ic <", value, "ic");
            return (Criteria) this;
        }

        public Criteria andIcLessThanOrEqualTo(String value) {
            addCriterion("Ic <=", value, "ic");
            return (Criteria) this;
        }

        public Criteria andIcLike(String value) {
            addCriterion("Ic like", value, "ic");
            return (Criteria) this;
        }

        public Criteria andIcNotLike(String value) {
            addCriterion("Ic not like", value, "ic");
            return (Criteria) this;
        }

        public Criteria andIcIn(List<String> values) {
            addCriterion("Ic in", values, "ic");
            return (Criteria) this;
        }

        public Criteria andIcNotIn(List<String> values) {
            addCriterion("Ic not in", values, "ic");
            return (Criteria) this;
        }

        public Criteria andIcBetween(String value1, String value2) {
            addCriterion("Ic between", value1, value2, "ic");
            return (Criteria) this;
        }

        public Criteria andIcNotBetween(String value1, String value2) {
            addCriterion("Ic not between", value1, value2, "ic");
            return (Criteria) this;
        }

        public Criteria andUaIsNull() {
            addCriterion("Ua is null");
            return (Criteria) this;
        }

        public Criteria andUaIsNotNull() {
            addCriterion("Ua is not null");
            return (Criteria) this;
        }

        public Criteria andUaEqualTo(Float value) {
            addCriterion("Ua =", value, "ua");
            return (Criteria) this;
        }

        public Criteria andUaNotEqualTo(Float value) {
            addCriterion("Ua <>", value, "ua");
            return (Criteria) this;
        }

        public Criteria andUaGreaterThan(Float value) {
            addCriterion("Ua >", value, "ua");
            return (Criteria) this;
        }

        public Criteria andUaGreaterThanOrEqualTo(Float value) {
            addCriterion("Ua >=", value, "ua");
            return (Criteria) this;
        }

        public Criteria andUaLessThan(Float value) {
            addCriterion("Ua <", value, "ua");
            return (Criteria) this;
        }

        public Criteria andUaLessThanOrEqualTo(Float value) {
            addCriterion("Ua <=", value, "ua");
            return (Criteria) this;
        }

        public Criteria andUaIn(List<Float> values) {
            addCriterion("Ua in", values, "ua");
            return (Criteria) this;
        }

        public Criteria andUaNotIn(List<Float> values) {
            addCriterion("Ua not in", values, "ua");
            return (Criteria) this;
        }

        public Criteria andUaBetween(Float value1, Float value2) {
            addCriterion("Ua between", value1, value2, "ua");
            return (Criteria) this;
        }

        public Criteria andUaNotBetween(Float value1, Float value2) {
            addCriterion("Ua not between", value1, value2, "ua");
            return (Criteria) this;
        }

        public Criteria andUbIsNull() {
            addCriterion("Ub is null");
            return (Criteria) this;
        }

        public Criteria andUbIsNotNull() {
            addCriterion("Ub is not null");
            return (Criteria) this;
        }

        public Criteria andUbEqualTo(Float value) {
            addCriterion("Ub =", value, "ub");
            return (Criteria) this;
        }

        public Criteria andUbNotEqualTo(Float value) {
            addCriterion("Ub <>", value, "ub");
            return (Criteria) this;
        }

        public Criteria andUbGreaterThan(Float value) {
            addCriterion("Ub >", value, "ub");
            return (Criteria) this;
        }

        public Criteria andUbGreaterThanOrEqualTo(Float value) {
            addCriterion("Ub >=", value, "ub");
            return (Criteria) this;
        }

        public Criteria andUbLessThan(Float value) {
            addCriterion("Ub <", value, "ub");
            return (Criteria) this;
        }

        public Criteria andUbLessThanOrEqualTo(Float value) {
            addCriterion("Ub <=", value, "ub");
            return (Criteria) this;
        }

        public Criteria andUbIn(List<Float> values) {
            addCriterion("Ub in", values, "ub");
            return (Criteria) this;
        }

        public Criteria andUbNotIn(List<Float> values) {
            addCriterion("Ub not in", values, "ub");
            return (Criteria) this;
        }

        public Criteria andUbBetween(Float value1, Float value2) {
            addCriterion("Ub between", value1, value2, "ub");
            return (Criteria) this;
        }

        public Criteria andUbNotBetween(Float value1, Float value2) {
            addCriterion("Ub not between", value1, value2, "ub");
            return (Criteria) this;
        }

        public Criteria andUcIsNull() {
            addCriterion("Uc is null");
            return (Criteria) this;
        }

        public Criteria andUcIsNotNull() {
            addCriterion("Uc is not null");
            return (Criteria) this;
        }

        public Criteria andUcEqualTo(Float value) {
            addCriterion("Uc =", value, "uc");
            return (Criteria) this;
        }

        public Criteria andUcNotEqualTo(Float value) {
            addCriterion("Uc <>", value, "uc");
            return (Criteria) this;
        }

        public Criteria andUcGreaterThan(Float value) {
            addCriterion("Uc >", value, "uc");
            return (Criteria) this;
        }

        public Criteria andUcGreaterThanOrEqualTo(Float value) {
            addCriterion("Uc >=", value, "uc");
            return (Criteria) this;
        }

        public Criteria andUcLessThan(Float value) {
            addCriterion("Uc <", value, "uc");
            return (Criteria) this;
        }

        public Criteria andUcLessThanOrEqualTo(Float value) {
            addCriterion("Uc <=", value, "uc");
            return (Criteria) this;
        }

        public Criteria andUcIn(List<Float> values) {
            addCriterion("Uc in", values, "uc");
            return (Criteria) this;
        }

        public Criteria andUcNotIn(List<Float> values) {
            addCriterion("Uc not in", values, "uc");
            return (Criteria) this;
        }

        public Criteria andUcBetween(Float value1, Float value2) {
            addCriterion("Uc between", value1, value2, "uc");
            return (Criteria) this;
        }

        public Criteria andUcNotBetween(Float value1, Float value2) {
            addCriterion("Uc not between", value1, value2, "uc");
            return (Criteria) this;
        }

        public Criteria andUabIsNull() {
            addCriterion("Uab is null");
            return (Criteria) this;
        }

        public Criteria andUabIsNotNull() {
            addCriterion("Uab is not null");
            return (Criteria) this;
        }

        public Criteria andUabEqualTo(Float value) {
            addCriterion("Uab =", value, "uab");
            return (Criteria) this;
        }

        public Criteria andUabNotEqualTo(Float value) {
            addCriterion("Uab <>", value, "uab");
            return (Criteria) this;
        }

        public Criteria andUabGreaterThan(Float value) {
            addCriterion("Uab >", value, "uab");
            return (Criteria) this;
        }

        public Criteria andUabGreaterThanOrEqualTo(Float value) {
            addCriterion("Uab >=", value, "uab");
            return (Criteria) this;
        }

        public Criteria andUabLessThan(Float value) {
            addCriterion("Uab <", value, "uab");
            return (Criteria) this;
        }

        public Criteria andUabLessThanOrEqualTo(Float value) {
            addCriterion("Uab <=", value, "uab");
            return (Criteria) this;
        }

        public Criteria andUabIn(List<Float> values) {
            addCriterion("Uab in", values, "uab");
            return (Criteria) this;
        }

        public Criteria andUabNotIn(List<Float> values) {
            addCriterion("Uab not in", values, "uab");
            return (Criteria) this;
        }

        public Criteria andUabBetween(Float value1, Float value2) {
            addCriterion("Uab between", value1, value2, "uab");
            return (Criteria) this;
        }

        public Criteria andUabNotBetween(Float value1, Float value2) {
            addCriterion("Uab not between", value1, value2, "uab");
            return (Criteria) this;
        }

        public Criteria andUbcIsNull() {
            addCriterion("Ubc is null");
            return (Criteria) this;
        }

        public Criteria andUbcIsNotNull() {
            addCriterion("Ubc is not null");
            return (Criteria) this;
        }

        public Criteria andUbcEqualTo(Float value) {
            addCriterion("Ubc =", value, "ubc");
            return (Criteria) this;
        }

        public Criteria andUbcNotEqualTo(Float value) {
            addCriterion("Ubc <>", value, "ubc");
            return (Criteria) this;
        }

        public Criteria andUbcGreaterThan(Float value) {
            addCriterion("Ubc >", value, "ubc");
            return (Criteria) this;
        }

        public Criteria andUbcGreaterThanOrEqualTo(Float value) {
            addCriterion("Ubc >=", value, "ubc");
            return (Criteria) this;
        }

        public Criteria andUbcLessThan(Float value) {
            addCriterion("Ubc <", value, "ubc");
            return (Criteria) this;
        }

        public Criteria andUbcLessThanOrEqualTo(Float value) {
            addCriterion("Ubc <=", value, "ubc");
            return (Criteria) this;
        }

        public Criteria andUbcIn(List<Float> values) {
            addCriterion("Ubc in", values, "ubc");
            return (Criteria) this;
        }

        public Criteria andUbcNotIn(List<Float> values) {
            addCriterion("Ubc not in", values, "ubc");
            return (Criteria) this;
        }

        public Criteria andUbcBetween(Float value1, Float value2) {
            addCriterion("Ubc between", value1, value2, "ubc");
            return (Criteria) this;
        }

        public Criteria andUbcNotBetween(Float value1, Float value2) {
            addCriterion("Ubc not between", value1, value2, "ubc");
            return (Criteria) this;
        }

        public Criteria andUcaIsNull() {
            addCriterion("Uca is null");
            return (Criteria) this;
        }

        public Criteria andUcaIsNotNull() {
            addCriterion("Uca is not null");
            return (Criteria) this;
        }

        public Criteria andUcaEqualTo(Float value) {
            addCriterion("Uca =", value, "uca");
            return (Criteria) this;
        }

        public Criteria andUcaNotEqualTo(Float value) {
            addCriterion("Uca <>", value, "uca");
            return (Criteria) this;
        }

        public Criteria andUcaGreaterThan(Float value) {
            addCriterion("Uca >", value, "uca");
            return (Criteria) this;
        }

        public Criteria andUcaGreaterThanOrEqualTo(Float value) {
            addCriterion("Uca >=", value, "uca");
            return (Criteria) this;
        }

        public Criteria andUcaLessThan(Float value) {
            addCriterion("Uca <", value, "uca");
            return (Criteria) this;
        }

        public Criteria andUcaLessThanOrEqualTo(Float value) {
            addCriterion("Uca <=", value, "uca");
            return (Criteria) this;
        }

        public Criteria andUcaIn(List<Float> values) {
            addCriterion("Uca in", values, "uca");
            return (Criteria) this;
        }

        public Criteria andUcaNotIn(List<Float> values) {
            addCriterion("Uca not in", values, "uca");
            return (Criteria) this;
        }

        public Criteria andUcaBetween(Float value1, Float value2) {
            addCriterion("Uca between", value1, value2, "uca");
            return (Criteria) this;
        }

        public Criteria andUcaNotBetween(Float value1, Float value2) {
            addCriterion("Uca not between", value1, value2, "uca");
            return (Criteria) this;
        }

        public Criteria andTypeIdIsNull() {
            addCriterion("type_id is null");
            return (Criteria) this;
        }

        public Criteria andTypeIdIsNotNull() {
            addCriterion("type_id is not null");
            return (Criteria) this;
        }

        public Criteria andTypeIdEqualTo(Integer value) {
            addCriterion("type_id =", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdNotEqualTo(Integer value) {
            addCriterion("type_id <>", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdGreaterThan(Integer value) {
            addCriterion("type_id >", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("type_id >=", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdLessThan(Integer value) {
            addCriterion("type_id <", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdLessThanOrEqualTo(Integer value) {
            addCriterion("type_id <=", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdIn(List<Integer> values) {
            addCriterion("type_id in", values, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdNotIn(List<Integer> values) {
            addCriterion("type_id not in", values, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdBetween(Integer value1, Integer value2) {
            addCriterion("type_id between", value1, value2, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("type_id not between", value1, value2, "typeId");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusIsNull() {
            addCriterion("transformer_status is null");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusIsNotNull() {
            addCriterion("transformer_status is not null");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusEqualTo(Integer value) {
            addCriterion("transformer_status =", value, "transformerStatus");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusNotEqualTo(Integer value) {
            addCriterion("transformer_status <>", value, "transformerStatus");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusGreaterThan(Integer value) {
            addCriterion("transformer_status >", value, "transformerStatus");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("transformer_status >=", value, "transformerStatus");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusLessThan(Integer value) {
            addCriterion("transformer_status <", value, "transformerStatus");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusLessThanOrEqualTo(Integer value) {
            addCriterion("transformer_status <=", value, "transformerStatus");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusIn(List<Integer> values) {
            addCriterion("transformer_status in", values, "transformerStatus");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusNotIn(List<Integer> values) {
            addCriterion("transformer_status not in", values, "transformerStatus");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusBetween(Integer value1, Integer value2) {
            addCriterion("transformer_status between", value1, value2, "transformerStatus");
            return (Criteria) this;
        }

        public Criteria andTransformerStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("transformer_status not between", value1, value2, "transformerStatus");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}